package smecta.client.print.util;

import javafx.fxml.FXMLLoader;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.util.Callback;
import smecta.client.print.SpringbootJavafxApplication;

import java.io.IOException;

public class FXMLLoaderUtil {
//    public static void load(String title, String route) {
//        FXMLLoader loader = new FXMLLoader(this.getClass().getResource(route));
//        loader.setControllerFactory(new Callback<Class<?>, Object>() {
//            @Override
//            public Object call(Class<?> param) {
//                // 控制器工厂提供bean注入，此处的缺点是不能根据bean名字注入，只能通过class类型注入bean
//                // 解决方案：
//                // 1、SpringbootJavafxApplication.applicationContext.getBean("Bean Name", Bean.class);
//                // 2、@Autowired private ApplicationContext applicationContext;
//                // Object bean_name = applicationContext.getBean("bean Name", Bean.class);
//                return SpringbootJavafxApplication.applicationContext.getBean(param);
//            }
//        });
//        Stage stage = new Stage();
//        Scene scene;
//        try {
//            scene = new Scene(loader.load());
//            stage.setScene(scene);
//            stage.setResizable(true);
//            stage.setTitle(title;
//            stage.show();
//        } catch (IOException e) {
//            e.printStackTrace();
//        }
//    }
}
